home *** CD-ROM | disk | FTP | other *** search
- /* Der Suchalgorithmus nach Knuth-Morris-Pratt
- * eignet sich hervorragend für die Suche in externen
- * Dateien
- */
-
- extern long NextArray[];
-
- long KMP_Search(char *Puffer,char *Pattern, long size)
- {
- long i,j,M=strlen(Pattern),N=size;
-
- for( i=0,j=0; j<M && i<N; i++, j++ )
- while( (j>=0) && (Puffer[i] != Pattern[j]) && i<N )
- j=NextArray[j];
- if( j==M ) {
- return i-M;
- } else {
- return i;
- }
- }
-